1200 |
Is it possible to display the task bars with a gradient color
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/31/2009'; LevelCount := 2; PaneWidth[False] := 96; Bars.Copy('Task','TaskO'); with Bars.Item['Task'] do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternGradientVBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox) Or Integer(EXG2ANTTLib_TLB.exPatternShadow); StartColor := $ffffff; EndColor := Color; end; end; Columns.Add('Types'); with Items do begin AddBar(AddItem('Original'),'TaskO','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Pattern Gradient'),'Task','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Original'),'TaskO','1/4/2010','1/9/2010','',Null); end; EndUpdate(); end |
1199 |
How can I know the type of bars I can displays using predefined patterns
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/31/2009'; LevelCount := 2; PaneWidth[False] := 96; with Bars do begin Add('Box').Pattern := EXG2ANTTLib_TLB.exPatternBox; Add('ThickBox').Pattern := Integer(EXG2ANTTLib_TLB.exPatternThickBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox); Add('DiagBox').Pattern := Integer(EXG2ANTTLib_TLB.exPatternThickBox) Or Integer(EXG2ANTTLib_TLB.exPatternBDiagonal); Copy('Task','Shadow').Pattern := Integer(EXG2ANTTLib_TLB.exPatternFrameShadow) Or Integer(EXG2ANTTLib_TLB.exPatternShadow); Copy('Task','TShadow').Pattern := Integer(EXG2ANTTLib_TLB.exPatternFrameShadow) Or Integer(EXG2ANTTLib_TLB.exPatternThickBox) Or Integer(EXG2ANTTLib_TLB.exPatternDiagCross); with Add('HGrad1') do begin Pattern := EXG2ANTTLib_TLB.exPatternBox; StartColor := $ffffff; EndColor := $ff0000; end; with Add('HGrad2') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternBox) Or Integer(EXG2ANTTLib_TLB.exPatternShadow); StartColor := $ffffff; EndColor := $ff0000; Color := $ff0000; end; with Add('HGrad3') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternGradient3Colors) Or Integer(EXG2ANTTLib_TLB.exPatternBox) Or Integer(EXG2ANTTLib_TLB.exPatternShadow); StartColor := $ffffff; EndColor := StartColor; Color := $ff0000; end; with Add('HGrad4') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternThickBox) Or Integer(EXG2ANTTLib_TLB.exPatternGradient3Colors) Or Integer(EXG2ANTTLib_TLB.exPatternBox); StartColor := $ffffff; EndColor := StartColor; Color := $ff0000; end; with Add('HGrad5') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternFrameShadow) Or Integer(EXG2ANTTLib_TLB.exPatternGradient3Colors) Or Integer(EXG2ANTTLib_TLB.exPatternBox); StartColor := $ff00; EndColor := $ff; Color := $ff0000; end; with Add('VGrad1') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternGradientVBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox); StartColor := $ffffff; EndColor := $ff0000; Height := 14; end; with Add('VGrad2') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternGradientVBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox) Or Integer(EXG2ANTTLib_TLB.exPatternShadow); StartColor := $ffffff; EndColor := $ff0000; Color := $ff0000; Height := 14; end; with Add('VGrad3') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternGradient3Colors) Or Integer(EXG2ANTTLib_TLB.exPatternGradientVBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox) Or Integer(EXG2ANTTLib_TLB.exPatternShadow); StartColor := $ffffff; EndColor := StartColor; Color := $ff0000; Height := 14; end; with Add('VGrad4') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternThickBox) Or Integer(EXG2ANTTLib_TLB.exPatternGradient3Colors) Or Integer(EXG2ANTTLib_TLB.exPatternGradientVBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox); StartColor := $ffffff; EndColor := StartColor; Color := $ff0000; Height := -1; end; with Add('VGrad5') do begin Pattern := Integer(EXG2ANTTLib_TLB.exPatternFrameShadow) Or Integer(EXG2ANTTLib_TLB.exPatternGradient3Colors) Or Integer(EXG2ANTTLib_TLB.exPatternGradientVBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox); StartColor := $ff00; EndColor := $ff; Color := $ff0000; Height := 14; end; end; end; Columns.Add('Types'); with Items do begin AddBar(AddItem('Box'),'Box','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Thick Box'),'ThickBox','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Thick Box Diag'),'DiagBox','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Shadow'),'Shadow','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Thick Shadow'),'TShadow','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Solid Gradient'),'HGrad1','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Pattern Gradient'),'HGrad2','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Pattern Gradient 3 Colors'),'HGrad3','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Solid Gradient 3 Colors'),'HGrad4','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Gradient Shadow'),'HGrad5','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Solid Gradient'),'VGrad1','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Pattern Gradient'),'VGrad2','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Pattern Gradient 3 Colors'),'VGrad3','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Solid Gradient 3 Colors'),'VGrad4','1/4/2010','1/9/2010','',Null); AddBar(AddItem('Gradient Shadow'),'VGrad5','1/4/2010','1/9/2010','',Null); end; EndUpdate(); end |
1198 |
Is it possible to display the bars with a thicker border
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.PaneWidth[False] := 48; Chart.Bars.Copy('Task','TaskB').Pattern := Integer(EXG2ANTTLib_TLB.exPatternThickBox) Or Integer(EXG2ANTTLib_TLB.exPatternShadow); with Items do begin AddBar(AddItem('Task 1'),'Task','1/2/2001','1/5/2001','',Null); AddBar(AddItem('Task 2'),'TaskB','1/2/2001','1/5/2001','',Null); AddBar(AddItem('Task 3'),'Task','1/2/2001','1/5/2001','',Null); end; EndUpdate(); end |
1197 |
Is it possible to display the shadow for EBN bars
with G2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.PaneWidth[False] := 48; with Chart.Bars.Copy('Task','EBN') do begin Color := $1000000; Pattern := EXG2ANTTLib_TLB.exPatternFrameShadow; end; Chart.Bars.Copy('Task','EBN2').Color := $1000000; with Items do begin AddBar(AddItem('Task 1'),'EBN2','1/2/2001','1/5/2001','',Null); AddBar(AddItem('Task 2'),'EBN','1/2/2001','1/5/2001','',Null); AddBar(AddItem('Task 3'),'EBN2','1/2/2001','1/5/2001','',Null); end; EndUpdate(); end |
1196 |
Can I display a shadow for my bars
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.PaneWidth[False] := 48; Chart.Bars.Item['Task'].Pattern := Integer(EXG2ANTTLib_TLB.exPatternFrameShadow) Or Integer(EXG2ANTTLib_TLB.exPatternShadow); with Items do begin AddBar(AddItem('Task 1'),'Task','1/2/2001','1/5/2001','',Null); AddBar(AddItem('Task 2'),'Task','1/2/2001','1/5/2001','',Null); end; EndUpdate(); end |
1195 |
How can I use the Color property for gradient bars
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.PaneWidth[False] := 48; with Chart.Bars.Add('V') do begin Color := $ff; StartColor := $ff00; EndColor := StartColor; Pattern := Integer(EXG2ANTTLib_TLB.exPatternGradient3Colors) Or Integer(EXG2ANTTLib_TLB.exPatternGradientVBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox); Height := -1; end; with Chart.Bars.Add('H') do begin Color := $ff; StartColor := $ff00; EndColor := StartColor; Pattern := Integer(EXG2ANTTLib_TLB.exPatternGradient3Colors) Or Integer(EXG2ANTTLib_TLB.exPatternBox); end; with Items do begin AddBar(AddItem('Task 1'),'V','1/2/2001','1/5/2001','',Null); AddBar(AddItem('Task 2'),'H','1/2/2001','1/5/2001','',Null); end; EndUpdate(); end |
1194 |
Is there any option to show bars with vertical gradient
with G2antt1 do begin Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; with Chart.Bars.Item['Task'] do begin Color := $ff; StartColor := $ff00; EndColor := $ffff; Pattern := Integer(EXG2ANTTLib_TLB.exPatternGradientVBox) Or Integer(EXG2ANTTLib_TLB.exPatternBox); end; with Items do begin h := AddItem('Task'); AddBar(h,'Task','1/2/2001','1/5/2001','',Null); end; end |
1193 |
How can I define a new milestone bar
with G2antt1 do begin BeginUpdate(); Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA='); Chart.FirstVisibleDate := '1/1/2001'; with Chart.Bars do begin AddShapeCorner(OleVariant(12345),OleVariant(1)); AddShapeCorner(OleVariant(12346),OleVariant(2)); Copy('Milestone','M1').StartShape := EXG2ANTTLib_TLB.ShapeCornerEnum($3020 Or Integer(EXG2ANTTLib_TLB.exShapeIconVBar) Or Integer(EXG2ANTTLib_TLB.exShapeIconRight)); Copy('Milestone','M2').StartShape := EXG2ANTTLib_TLB.ShapeCornerEnum($3020 Or Integer(EXG2ANTTLib_TLB.exShapeIconSquare) Or Integer(EXG2ANTTLib_TLB.exShapeIconRight)); with Copy('Milestone','MP') do begin StartShape := EXG2ANTTLib_TLB.exShapeIconStar; StartColor := $ff; end; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Default'),'Milestone','1/2/2001','1/2/2001',Null,Null); AddBar(AddItem('Predefined'),'MP','1/3/2001','1/3/2001',Null,Null); AddBar(AddItem('Custom 1'),'M1','1/4/2001','1/4/2001',Null,Null); AddBar(AddItem('Custom 2'),'M2','1/5/2001','1/5/2001',Null,Null); end; EndUpdate(); end |
1192 |
How can I define my milestone bar, using my icons or pictures
with G2antt1 do begin Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA='); Chart.FirstVisibleDate := '1/1/2001'; with Chart.Bars do begin AddShapeCorner(OleVariant(12345),OleVariant(1)); Item['Milestone'].StartShape := EXG2ANTTLib_TLB.ShapeCornerEnum($3020 Or Integer(EXG2ANTTLib_TLB.exShapeIconVBar) Or Integer(EXG2ANTTLib_TLB.exShapeIconRight)); end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Milestone','1/2/2001','1/2/2001',Null,Null); end; end |
1191 |
Is it possible to specify manually non-working days instead using the NonworkingDays as being repetitive
with G2antt1 do begin BeginUpdate(); with Chart do begin DrawGridLines := EXG2ANTTLib_TLB.exAllLines; FirstVisibleDate := '1/1/2010'; PaneWidth[False] := 0; LevelCount := 2; Level[0].DrawGridLines := True; ShowNonworkingUnits := False; ShowNonworkingDates := False; NonworkingDays := 0; AddNonworkingDate('1/10/2010'); AddNonworkingDate('1/11/2010'); AddNonworkingDate('1/15/2010'); AddNonworkingDate('1/16/2010'); end; EndUpdate(); end |
1190 |
Is it possible to hide specific days
with G2antt1 do begin BeginUpdate(); with Chart do begin DrawGridLines := EXG2ANTTLib_TLB.exAllLines; FirstVisibleDate := '1/1/2010'; PaneWidth[False] := 0; LevelCount := 2; Level[0].DrawGridLines := True; ShowNonworkingUnits := False; ShowNonworkingDates := False; NonworkingDays := 128; AddNonworkingDate('1/10/2010'); AddNonworkingDate('1/11/2010'); AddNonworkingDate('1/15/2010'); AddNonworkingDate('1/16/2010'); end; EndUpdate(); end |
1189 |
Is it possible to show or display the marked zones ONLY in the overview part of the control
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin LevelCount := 2; FirstVisibleDate := '1/14/2001'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib_TLB.exNoCreateBar; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; Bars.Item['Task'].Pattern := EXG2ANTTLib_TLB.exPatternSolid; MarkTimeZone('Z1','1/3/2001','1/4/2001',OleVariant(BackColor),';;Zone <b>1</b>'); MarkTimeZone('Z2','2/6/2001','2/7/2001',OleVariant(BackColor),';;Zone <b>2</b>'); MarkTimeZone('Z3','1/16/2001','1/19/2001',OleVariant(BackColor),';;Zone <b>3</b>'); OverviewShowMarkTimeZones := True; OverviewBackColor := $f0f0dc; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/5/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','2/5/2001','2/8/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1188 |
Is it possible to show or display the marked zones in the overview part of the control
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin LevelCount := 2; FirstVisibleDate := '1/14/2001'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib_TLB.exNoCreateBar; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; Bars.Item['Task'].Pattern := EXG2ANTTLib_TLB.exPatternSolid; MarkTimeZone('Z1','1/3/2001','1/4/2001',OleVariant(16777056),Null); MarkTimeZone('Z2','2/6/2001','2/7/2001',OleVariant(16744544),Null); MarkTimeZone('Z3','1/16/2001','1/19/2001',OleVariant(16744544),Null); OverviewShowMarkTimeZones := True; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/5/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','2/5/2001','2/8/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1187 |
Is there a quick way to determine if a bar belongs to a group
with G2antt1 do begin Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 64; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/7/2001','K2',Null); h3 := AddItem('Task 3'); AddBar(h3,'Task','1/5/2001','1/7/2001','K3',Null); GroupBars(h1,'K1',True,h2,'K2',True,Null,Null); GroupBars(h1,'K1',False,h2,'K2',False,Null,Null); GroupBars(h1,'K1',True,h3,'K3',True,Null,Null); GroupBars(h1,'K1',False,h3,'K3',False,Null,Null); OutputDebugString( ItemBar[h1,'K1',EXG2ANTTLib_TLB.exBarsGroup] ); end; end |
1186 |
I am using the ScrollRange property to limit the chart's visible area, but it does not work as expected. What could be wrong
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin LevelCount := 2; PaneWidth[False] := 56; ScrollRange[EXG2ANTTLib_TLB.exStartDate] := '1/1/100'; ScrollRange[EXG2ANTTLib_TLB.exEndDate] := '12/31/9999'; FirstVisibleDate := '4/28/2010'; end; ScrollPartCaption[EXG2ANTTLib_TLB.exHChartScroll,EXG2ANTTLib_TLB.exLowerBackPart] := Chart.ScrollRange[EXG2ANTTLib_TLB.exStartDate]; ScrollPartCaptionAlignment[EXG2ANTTLib_TLB.exHChartScroll,EXG2ANTTLib_TLB.exLowerBackPart] := EXG2ANTTLib_TLB.LeftAlignment; ScrollPartCaption[EXG2ANTTLib_TLB.exHChartScroll,EXG2ANTTLib_TLB.exUpperBackPart] := Chart.ScrollRange[EXG2ANTTLib_TLB.exEndDate]; ScrollPartCaptionAlignment[EXG2ANTTLib_TLB.exHChartScroll,EXG2ANTTLib_TLB.exUpperBackPart] := EXG2ANTTLib_TLB.RightAlignment; EndUpdate(); end |
1185 |
Are you planning to add a AddNonworkingDate / AddNonworkingDay for separate items
with G2antt1 do begin BeginUpdate(); AllowChartScrollPage := True; Columns.Add('Non-Work'); with Chart do begin FirstVisibleDate := '4/4/2009'; PaneWidth[False] := 52; LevelCount := 2; end; with Items do begin AddItem('Default'); ItemNonworkingUnits[AddItem('Test 1'),OleVariant(False)] := 'shortdate(value) in (#4/5/2009#,#4/6/2009#)'; ItemNonworkingUnits[AddItem('Test 2'),OleVariant(False)] := 'shortdate(value) in (#4/6/2009#,#4/7/2009#)'; ItemNonworkingUnits[AddItem('Test 3'),OleVariant(False)] := 'shortdate(value) in (#4/7/2009#,#4/9/2009#)'; AddItem('Default'); end; EndUpdate(); end |
1184 |
How can I enlarge the EBN being applied to an object
with G2antt1 do begin BeginUpdate(); DefaultItemHeight := 32; with VisualAppearance do begin Add(2,'c:\exontrol\images\normal.ebn'); Add(1,'CP:2 -3 -2 3 2'); end; with Chart do begin FirstVisibleDate := '1/1/2002'; SelBarColor := $1000000; PaneWidth[False] := 48; end; Columns.Add('Task'); with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2002','1/4/2002','A',Null); AddBar(h,'Task','1/6/2002','1/10/2002','B',Null); AddBar(h,'Task','1/11/2002','1/14/2002','C',Null); ItemBar[h,'A',EXG2ANTTLib_TLB.exBarSelected] := OleVariant(True); ItemBar[h,'B',EXG2ANTTLib_TLB.exBarSelected] := OleVariant(True); end; EndUpdate(); end |
1183 |
I am using EBN to display my bars but the bars shows in black in the overview area. Is there any option to specify a different color in the overview part of the control
with G2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); with Chart do begin Bars.Item['Task'].Color := $1000000; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; FirstVisibleDate := '1/11/2001'; LevelCount := 2; end; Columns.Add('Column'); with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/4/2001',OleVariant(1),Null); ItemBar[h,OleVariant(1),EXG2ANTTLib_TLB.exBarOverviewColor] := OleVariant(8821418); AddBar(h,'Task','2/2/2001','2/4/2001',OleVariant(2),Null); ItemBar[h,OleVariant(2),EXG2ANTTLib_TLB.exBarOverviewColor] := OleVariant(8821418); h := AddItem('Task 2'); AddBar(h,'Task','2/2/2001','2/4/2001','',Null); ItemBar[h,'',EXG2ANTTLib_TLB.exBarOverviewColor] := OleVariant(8821418); end; EndUpdate(); end |
1182 |
I haven't found options to localize (in Italian) the strings ( dates, tooltip ) that shows in the chart area
with G2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 0; Label[EXG2ANTTLib_TLB.exWeek] := '<|><%ww%><|><%d%> <%m3%> ''<%yy%><r><%ww%><|><%d%> <%mmmm%> <%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib_TLB.exDay] := '<|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%> <%d%> <%m3%> ''<%yy%><|><%dddd%> <%d%> <%mmmm%> <%yyyy%><||><||>4096'; LabelToolTip[EXG2ANTTLib_TLB.exWeek] := '<%d%> <%mmmm%> <%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib_TLB.exDay] := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; FirstWeekDay := EXG2ANTTLib_TLB.exMonday; MonthNames := 'gennaio febbraio marzo aprile maggio giugno luglio agosto settembre ottobre novembre dicembre'; WeekDays := 'domenica lunedì martedì mercoledì giovedì venerdì sabato'; ToolTip := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; UnitScale := EXG2ANTTLib_TLB.exDay; end; EndUpdate(); end |
1181 |
I haven't found options to localize (in Dutch) the strings ( dates, tooltip ) that shows in the chart area
with G2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 0; Label[EXG2ANTTLib_TLB.exWeek] := '<|><%ww%><|><%d%> <%m3%> ''<%yy%><r><%ww%><|><%d%> <%mmmm%> <%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib_TLB.exDay] := '<|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%> <%d%> <%m3%> ''<%yy%><|><%dddd%> <%d%> <%mmmm%> <%yyyy%><||><||>4096'; LabelToolTip[EXG2ANTTLib_TLB.exWeek] := '<%d%> <%mmmm%> <%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib_TLB.exDay] := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; FirstWeekDay := EXG2ANTTLib_TLB.exMonday; MonthNames := 'januari februari maart april mei juni juli augusts september oktober november december'; WeekDays := 'zondag maandag dinsdag woensdag donderdag vrijdag zaterdag'; ToolTip := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; UnitScale := EXG2ANTTLib_TLB.exDay; end; EndUpdate(); end |
1180 |
I haven't found options to localize (in German) the strings ( dates, tooltip ) that shows in the chart area (method 1)
with G2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 0; Label[EXG2ANTTLib_TLB.exWeek] := '<|><%ww%><|><%d%> <%m3%> ''<%yy%><r><%ww%><|><%d%>.<%mmmm%> <%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib_TLB.exDay] := '<|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%> <%d%>.<%m3%> ''<%yy%><|><%dddd%> <%d%>.<%mmmm%> <%yyyy%><||><||>4096'; LabelToolTip[EXG2ANTTLib_TLB.exWeek] := '<%d%>.<%mmmm%> <%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib_TLB.exDay] := '<%dddd%>, <%d%>.<%mmmm%> <%yyyy%>'; FirstWeekDay := EXG2ANTTLib_TLB.exMonday; MonthNames := 'Januar Februar März April Mai Juni Juli August September Oktober November Dezember'; WeekDays := 'Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag'; ToolTip := '<%dddd%>,<%d%>.<%mmmm%> <%yyyy%>'; UnitScale := EXG2ANTTLib_TLB.exDay; end; EndUpdate(); end |
1179 |
I haven't found options to localize (in French) the strings ( dates, tooltip ) that shows in the chart area
with G2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 0; Label[EXG2ANTTLib_TLB.exWeek] := '<|><%ww%><|><%d%> <%m3%> ''<%yy%><r><%ww%><|><%d%> <%mmmm%> <%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib_TLB.exDay] := '<|><%d1%><|><%d2%><|><%d3%><|><%dddd%><|><%d3%> <%d%> <%m3%> ''<%yy%><|><%dddd%> <%d%> <%mmmm%> <%yyyy%><||><||>4096'; LabelToolTip[EXG2ANTTLib_TLB.exWeek] := '<%d%> <%mmmm%> <%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib_TLB.exDay] := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; FirstWeekDay := EXG2ANTTLib_TLB.exMonday; MonthNames := 'janvier février mars avril mai juin juillet août septembre octobre novembre décembre'; WeekDays := 'dimanche lundi mardi mercredi jeudi vendredi samedi'; ToolTip := '<%dddd%> <%d%> <%mmmm%> <%yyyy%>'; UnitScale := EXG2ANTTLib_TLB.exDay; end; EndUpdate(); end |
1178 |
How can I determine the last visible date in the chart
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin OutputDebugString( 'First' ); OutputDebugString( Chart.FirstVisibleDate ); OutputDebugString( 'Last' ); OutputDebugString( Chart.DateFromPoint[1,-1] ); end end; with G2antt1 do begin BeginUpdate(); with Chart do begin LevelCount := 2; PaneWidth[False] := 1; end; EndUpdate(); end |
1177 |
How can I filter programatically using more columns
with G2antt1 do begin BeginUpdate(); Chart.PaneWidth[True] := 0; MarkSearchColumn := False; with Columns do begin Add('Car'); Add('Equipment'); end; with Items do begin CellValue[OleVariant(AddItem('Mazda')),OleVariant(1)] := 'Air Bag'; CellValue[OleVariant(AddItem('Toyota')),OleVariant(1)] := 'Air Bag,Air condition'; CellValue[OleVariant(AddItem('Ford')),OleVariant(1)] := 'Air condition'; CellValue[OleVariant(AddItem('Nissan')),OleVariant(1)] := 'Air Bag,ABS,ESP'; CellValue[OleVariant(AddItem('Mazda')),OleVariant(1)] := 'Air Bag, ABS,ESP'; CellValue[OleVariant(AddItem('Mazda')),OleVariant(1)] := 'ABS,ESP'; end; with Columns.Item['Car'] do begin FilterType := EXG2ANTTLib_TLB.exFilter; Filter := 'Mazda'; end; with Columns.Item['Equipment'] do begin FilterType := EXG2ANTTLib_TLB.exPattern; Filter := '*ABS*|*ESP*'; end; ApplyFilter(); EndUpdate(); end |
1176 |
Do you have scheduling functionality in Gantt (meaning scheduling several activities (bars) depending on their start and finish dates with considering dependencies to other activities
// BarResize event - Occurs when a bar is moved or resized. procedure TForm1.G2antt1BarResize(ASender: TObject; Item : HITEM;Key : OleVariant); begin with G2antt1 do begin Items.SchedulePDM(Item,OleVariant(Key)); end end; with G2antt1 do begin BeginUpdate(); Items.AllowCellValueToItemBar := True; Columns.Add('Task'); (IUnknown(Columns.Add('Working')) as EXG2ANTTLib_TLB.Column).Def[EXG2ANTTLib_TLB.exCellValueToItemBarProperty] := OleVariant(258); with Chart do begin Bars.Add('Task:Split').Shortcut := 'Task'; FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 96; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib_TLB.exNoCreateBar; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/2/2001','1/4/2001','',Null); AddLink('L1',h1,'',h2,''); h3 := AddItem('Task 3'); AddBar(h3,'Task','1/2/2001','1/6/2001','',Null); AddLink('L2',h2,'',h3,''); Link['L2',EXG2ANTTLib_TLB.exLinkText] := 'FF'; Link['L2',EXG2ANTTLib_TLB.exLinkStartPos] := OleVariant(2); Link['L2',EXG2ANTTLib_TLB.exLinkEndPos] := OleVariant(2); h4 := AddItem('Task 4'); AddBar(h4,'Task','1/2/2001','1/4/2001','',Null); AddLink('L3',h4,'',h3,''); ItemBar[0,'<*>',EXG2ANTTLib_TLB.exBarKeepWorkingCount] := OleVariant(True); SchedulePDM(FirstVisibleItem,''); end; EndUpdate(); end |
1175 |
How can I show the ticks for a single slider field
with G2antt1 do begin BeginUpdate(); (IUnknown(Columns.Add('Slider')) as EXG2ANTTLib_TLB.Column).Editor.EditType := EXG2ANTTLib_TLB.SliderType; with Items do begin AddItem(OleVariant(10)); with CellEditor[OleVariant(AddItem(OleVariant(20))),OleVariant(0)] do begin EditType := EXG2ANTTLib_TLB.SliderType; Option[EXG2ANTTLib_TLB.exSliderTickFrequency] := OleVariant(10); end; AddItem(OleVariant(30)); end; EndUpdate(); end |
1174 |
Is it possible to show ticks for slider fields
with G2antt1 do begin with (IUnknown(Columns.Add('Slider')) as EXG2ANTTLib_TLB.Column).Editor do begin EditType := EXG2ANTTLib_TLB.SliderType; Option[EXG2ANTTLib_TLB.exSliderTickFrequency] := OleVariant(10); end; Items.AddItem(OleVariant(10)); end |
1173 |
How can I group two bars so the distance between them is limited to a specified range
with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','9/21/2006','9/24/2006',Null,Null); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/25/2006','9/28/2006',Null,Null); AddLink('L1',h1,'',h2,''); GroupBars(h1,'',False,h2,'',True,OleVariant(31),'1;2'); OutputDebugString( 'The distance between A and B is limited between 1 and 3 days' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1172 |
How can I group two bars so the distance between them is flexible but never less than a specified value
with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','9/21/2006','9/24/2006',Null,Null); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/26/2006','9/29/2006',Null,Null); AddLink('L1',h1,'',h2,''); GroupBars(h1,'',False,h2,'',True,OleVariant(39),'2'); OutputDebugString( 'The distance between A and B is never less than 2 days' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1171 |
How can I group two bars so the distance between them is flexible
with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','9/21/2006','9/24/2006',Null,Null); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/26/2006','9/29/2006',Null,Null); AddLink('L1',h1,'',h2,''); GroupBars(h1,'',False,h2,'',True,OleVariant(39),Null); OutputDebugString( 'The distance between A and B is flexible, unlimited' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1170 |
How can I group two bars so the interval between them is fixed
with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','9/21/2006','9/24/2006','T1','A'); AddBar(h,'Unknown','9/26/2006','9/29/2006','T2','B'); AddLink('L',h,'T1',h,'T2'); Link['L',EXG2ANTTLib_TLB.exLinkGroupBars] := OleVariant(27); Link['L',EXG2ANTTLib_TLB.exLinkShowDir] := OleVariant(False); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/26/2006','9/29/2006','T2','B'); AddLink('L2',h,'T1',h2,'T2'); Link['L2',EXG2ANTTLib_TLB.exLinkGroupBars] := OleVariant(27); Link['L2',EXG2ANTTLib_TLB.exLinkShowDir] := OleVariant(False); OutputDebugString( 'The distance between bars is constant' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1169 |
How can I group two bars when linking, so moving the first bar will makes the second to move accordingly
with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 48; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','9/21/2006','9/24/2006','','A'); h2 := AddItem('Task 2'); AddBar(h2,'Unknown','9/26/2006','9/29/2006','','B'); AddLink('L1',h1,'',h2,''); Link['L1',EXG2ANTTLib_TLB.exLinkGroupBars] := OleVariant(39); OutputDebugString( 'The distance between A and B is flexible, unlimited' ); OutputDebugString( 'The B is always after the A' ); end; EndUpdate(); end |
1168 |
Is it possible to be notified when the user clicks an anchor element a hyperlink in the date-time zone
// AnchorClick event - Occurs when an anchor element is clicked. procedure TForm1.G2antt1AnchorClick(ASender: TObject; AnchorID : WideString;Options : WideString); begin with G2antt1 do begin OutputDebugString( 'Click: ' ); OutputDebugString( AnchorID ); end end; with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z','1/2/2001','1/5/2001',OleVariant(15753471),';32;Caption <a1><b>1</b></a>;1;Caption <a2><b>2</b></a>;17;Caption <a3><b>3</b></a>'); end; EndUpdate(); end |
1167 |
Is it possible to be notified when the user clicks a date-time zone
|
1166 |
Is is possible to display multiple captions in the same date-time zone
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z','1/5/2001','1/8/2001',OleVariant(12895487),';;Caption <b>1</b>;1;Caption <b>2</b>;17;Caption <b>3</b>'); end; EndUpdate(); end |
1165 |
Is is possible to align on the top the caption for the date-time zone
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z','1/5/2001','1/8/2001',OleVariant(12895487),';;UpperCenter;1'); end; EndUpdate(); end |
1164 |
Is there any option to display a picture on the date-time zone
with G2antt1 do begin BeginUpdate(); HTMLPicture['pic1'] := 'c:\exontrol\images\card.png'; with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z','1/5/2001','1/8/2001',OleVariant(12895487),';;<c><img>pic1</img><br><c>picture'); end; EndUpdate(); end |
1163 |
Is there any option to display a text or a HTML caption on the date-time zone
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; MarkTimeZone('Z1','1/1/2001','1/4/2001',OleVariant(12895487),';;zone <b>1</b>'); MarkTimeZone('Z2','1/5/2001','1/8/2001',OleVariant(12895487),';;zone <b>2</b>'); end; EndUpdate(); end |
1162 |
How can I display the date-time zone using a semi-transparent EBN object
with G2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib_TLB.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib_TLB.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',OleVariant(16777056),';;Solid'); MarkTimeZone('Z2','1/7/2001','1/10/2001',OleVariant(16777216),'50;;EBN'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1161 |
How can I display the date-time zone using an EBN or a skin instead a solid color
with G2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib_TLB.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib_TLB.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',OleVariant(16777056),';;Solid'); MarkTimeZone('Z2','1/5/2001','1/8/2001',OleVariant(16777216),';;EBN'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1160 |
How can I display the date-time zone using a pattern instead a solid color
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib_TLB.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib_TLB.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',OleVariant(16777056),';;Solid'); MarkTimeZone('Z2','1/6/2001','1/7/2001',OleVariant(16777056),';12;Pattern'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1159 |
How can I display the date-time zone using a transparent color
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib_TLB.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib_TLB.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',OleVariant(16777056),';;Opaque'); MarkTimeZone('Z2','1/6/2001','1/7/2001',OleVariant(16777056),'50;;Semi-Transparent'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1158 |
The date time zone is shown behind the bars, is there any way to show it over
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/28/2000'; PaneWidth[False] := 48; AllowLinkBars := False; AllowCreateBar := EXG2ANTTLib_TLB.exNoCreateBar; Bars.Item['Task'].Pattern := EXG2ANTTLib_TLB.exPatternSolid; MarkTimeZone('Z1','1/2/2001','1/3/2001',OleVariant(16777056),Null); MarkTimeZone('Z2','1/6/2001','1/7/2001',OleVariant(16777056),'1'); end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/8/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); end; EndUpdate(); end |
1157 |
How can I get ifnromation about a date-time zone
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin with Chart do begin OutputDebugString( TimeZoneInfo[TimeZoneFromPoint[-1,-1]] ); end; end end; with G2antt1 do begin with Chart do begin PaneWidth[False] := 18; LevelCount := 2; FirstVisibleDate := '1/1/2010'; MarkTimeZone('Z1','1/4/2010','1/8/2010',OleVariant(16744544),Null); MarkTimeZone('Z2','1/12/2010','1/18/2010',OleVariant(16761952),Null); end; end |
1156 |
How can I determine the zone from the cursor
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin with Chart do begin OutputDebugString( TimeZoneFromPoint[-1,-1] ); end; end end; with G2antt1 do begin with Chart do begin PaneWidth[False] := 18; LevelCount := 2; FirstVisibleDate := '1/1/2010'; MarkTimeZone('Z1','1/4/2010','1/8/2010',OleVariant(16744544),Null); MarkTimeZone('Z2','1/12/2010','1/18/2010',OleVariant(16761952),Null); end; end |
1155 |
How can I highlight multiple date-time zones (ranges)
with G2antt1 do begin with Chart do begin PaneWidth[False] := 18; LevelCount := 2; FirstVisibleDate := '1/1/2010'; MarkTimeZone('Z1','1/4/2010','1/8/2010',OleVariant(16744544),Null); MarkTimeZone('Z2','1/12/2010','1/18/2010',OleVariant(16761952),Null); end; end |
1154 |
How can I highlight a date-time range
with G2antt1 do begin with Chart do begin PaneWidth[False] := 18; LevelCount := 2; FirstVisibleDate := '1/1/2010'; MarkTimeZone('Z1','1/4/2010','1/8/2010',OleVariant(16744544),Null); end; end |
1153 |
How do I get the list of selected date
|
1152 |
Is there any function I can use to find the bars that intersect with the current bar
// BarResizing event - Occurs when a bar is moving or resizing. procedure TForm1.G2antt1BarResizing(ASender: TObject; Item : HITEM;Key : OleVariant); begin with G2antt1 do begin with Items do begin OutputDebugString( Key ); OutputDebugString( 'intesect with' ); OutputDebugString( ItemBar[Item,OleVariant(Key),EXG2ANTTLib_TLB.exBarIntersectWithAsString] ); end; end end; with G2antt1 do begin BeginUpdate(); DefaultItemHeight := 22; Columns.Add('Task'); ScrollBySingleLine := True; DrawGridLines := EXG2ANTTLib_TLB.exAllLines; with Chart do begin DrawGridLines := EXG2ANTTLib_TLB.exAllLines; PaneWidth[False] := 48; FirstVisibleDate := '12/28/2000'; LevelCount := 2; Bars.Item['Task'].OverlaidType := EXG2ANTTLib_TLB.exOverlaidBarsOffset; ResizeUnitScale := EXG2ANTTLib_TLB.exHour; AllowCreateBar := EXG2ANTTLib_TLB.exCreateBarAuto; end; with Items do begin h1 := AddItem('Default'); AddBar(h1,'Task','1/2/2001','1/4/2001','A1','A1'); AddBar(h1,'Task','1/3/2001','1/5/2001','A2','A2'); AddBar(h1,'Task','1/4/2001','1/7/2001','A3','A3'); end; EndUpdate(); end |
1151 |
Is it possible to order the bars on top of other bars
with G2antt1 do begin BeginUpdate(); DefaultItemHeight := 22; Columns.Add('Task'); ScrollBySingleLine := True; DrawGridLines := EXG2ANTTLib_TLB.exAllLines; with Chart do begin DrawGridLines := EXG2ANTTLib_TLB.exAllLines; PaneWidth[False] := 48; FirstVisibleDate := '12/28/2000'; LevelCount := 2; Bars.Copy('Task','NTask').OverlaidType := EXG2ANTTLib_TLB.exOverlaidBarsOffset; end; with Items do begin h1 := AddItem('Default'); AddBar(h1,'Task','1/2/2001','1/4/2001','A1',Null); AddBar(h1,'Task','1/3/2001','1/5/2001','A2',Null); AddBar(h1,'Task','1/4/2001','1/7/2001','A3',Null); h2 := AddItem('Overlaid'); AddBar(h2,'NTask','1/2/2001','1/4/2001','A1',Null); AddBar(h2,'NTask','1/3/2001','1/5/2001','A2',Null); AddBar(h2,'NTask','1/4/2001','1/7/2001','A3',Null); GroupBars(h1,'A1',True,h2,'A1',True,Null,Null); GroupBars(h1,'A1',False,h2,'A1',False,Null,Null); GroupBars(h1,'A2',True,h2,'A2',True,Null,Null); GroupBars(h1,'A2',False,h2,'A2',False,Null,Null); GroupBars(h1,'A3',True,h2,'A3',True,Null,Null); GroupBars(h1,'A3',False,h2,'A3',False,Null,Null); end; EndUpdate(); end |
1150 |
Is it possible to order the bars on top of other bars (have different colurs so that they can be seen)
with G2antt1 do begin BeginUpdate(); DefaultItemHeight := 22; Columns.Add('Task'); ScrollBySingleLine := True; DrawGridLines := EXG2ANTTLib_TLB.exAllLines; with Chart do begin DrawGridLines := EXG2ANTTLib_TLB.exAllLines; PaneWidth[False] := 48; FirstVisibleDate := '12/28/2000'; LevelCount := 2; Bars.Copy('Task','NTask').OverlaidType := Integer(EXG2ANTTLib_TLB.exOverlaidBarsStackAutoArrange) Or Integer(EXG2ANTTLib_TLB.exOverlaidBarsStack); end; with Items do begin h1 := AddItem('Default'); AddBar(h1,'Task','1/2/2001','1/4/2001','A1',Null); AddBar(h1,'Task','1/3/2001','1/5/2001','A2',Null); AddBar(h1,'Task','1/4/2001','1/7/2001','A3',Null); h2 := AddItem('Overlaid'); AddBar(h2,'NTask','1/2/2001','1/4/2001','A1',Null); AddBar(h2,'NTask','1/3/2001','1/5/2001','A2',Null); AddBar(h2,'NTask','1/4/2001','1/7/2001','A3',Null); GroupBars(h1,'A1',True,h2,'A1',True,Null,Null); GroupBars(h1,'A1',False,h2,'A1',False,Null,Null); GroupBars(h1,'A2',True,h2,'A2',True,Null,Null); GroupBars(h1,'A2',False,h2,'A2',False,Null,Null); GroupBars(h1,'A3',True,h2,'A3',True,Null,Null); GroupBars(h1,'A3',False,h2,'A3',False,Null,Null); end; EndUpdate(); end |
1149 |
Is it possible to layer bars on top of other bars (have different colurs so that they can be seen)
with G2antt1 do begin BeginUpdate(); DefaultItemHeight := 22; Columns.Add('Task'); with Chart do begin PaneWidth[False] := 48; FirstVisibleDate := '12/28/2000'; LevelCount := 2; Bars.Copy('Task','NTask').OverlaidType := EXG2ANTTLib_TLB.exOverlaidBarsOffset; end; with Items do begin h1 := AddItem('Default'); AddBar(h1,'Task','1/2/2001','1/4/2001','A1',Null); AddBar(h1,'Task','1/3/2001','1/5/2001','A2',Null); AddBar(h1,'Task','1/4/2001','1/7/2001','A3',Null); h2 := AddItem('Overlaid'); AddBar(h2,'NTask','1/2/2001','1/4/2001','A1',Null); AddBar(h2,'NTask','1/3/2001','1/5/2001','A2',Null); AddBar(h2,'NTask','1/4/2001','1/7/2001','A3',Null); GroupBars(h1,'A1',True,h2,'A1',True,Null,Null); GroupBars(h1,'A1',False,h2,'A1',False,Null,Null); GroupBars(h1,'A2',True,h2,'A2',True,Null,Null); GroupBars(h1,'A2',False,h2,'A2',False,Null,Null); GroupBars(h1,'A3',True,h2,'A3',True,Null,Null); GroupBars(h1,'A3',False,h2,'A3',False,Null,Null); end; EndUpdate(); end |
1148 |
My skin(EBN) bars are not shown a different color in the overview. What can I do
with G2antt1 do begin BeginUpdate(); VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); with Chart do begin Bars.Item['Task'].Color := $1000000; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; FirstVisibleDate := '1/11/2001'; LevelCount := 2; end; Columns.Add('Column'); with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/4/2001',OleVariant(1),Null); AddBar(h,'Task','2/2/2001','2/4/2001',OleVariant(2),Null); ItemBar[h,OleVariant(2),EXG2ANTTLib_TLB.exBarColor] := OleVariant(16776960); h := AddItem('Task 2'); AddBar(h,'Task','2/2/2001','2/4/2001','',Null); ItemBar[h,'',EXG2ANTTLib_TLB.exBarColor] := OleVariant(255); end; EndUpdate(); end |
1147 |
How do I colour the lines in the overview section to match the bars they represent on the main chart
with G2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; FirstVisibleDate := '1/1/2001'; LevelCount := 2; end; Columns.Add('Column'); with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/4/2001',OleVariant(1),Null); AddBar(h,'Task','2/2/2001','2/4/2001',OleVariant(2),Null); h := AddItem('Task 2'); AddBar(h,'Task','2/2/2001','2/4/2001','',Null); ItemBar[h,'',EXG2ANTTLib_TLB.exBarColor] := OleVariant(255); end; EndUpdate(); end |
1146 |
How do I catch the delete key (down) on a bar
// KeyDown event - Occurs when the user presses a key while an object has the focus. procedure TForm1.G2antt1KeyDown(ASender: TObject; var KeyCode : Smallint;Shift : Smallint); begin with G2antt1 do begin OutputDebugString( KeyCode ); OutputDebugString( Shift ); end end; with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/27/2000'; LevelCount := 2; PaneWidth[False] := 48; with Bars.Item['Task'] do begin Pattern := EXG2ANTTLib_TLB.exPatternBox; Height := 13; end; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K1','This is a bit of text that is not clipped'); h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K1','This is a bit of text that get''s clipped'); ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(3); ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarToolTip] := ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarCaption]; end; EndUpdate(); end |
1145 |
Is it possible to colour a particular column, I mean the cell's foreground color
with G2antt1 do begin BeginUpdate(); with ConditionalFormats.Add('1',Null) do begin ForeColor := $ff; ApplyTo := EXG2ANTTLib_TLB.FormatApplyToEnum($1); end; MarkSearchColumn := False; with Columns do begin Add('Column 1'); Add('Column 2'); end; with Items do begin CellValue[OleVariant(AddItem(OleVariant(0))),OleVariant(1)] := OleVariant(1); CellValue[OleVariant(AddItem(OleVariant(2))),OleVariant(1)] := OleVariant(3); CellValue[OleVariant(AddItem(OleVariant(4))),OleVariant(1)] := OleVariant(5); end; EndUpdate(); end |
1144 |
Is it possible to colour a particular column for specified values
with G2antt1 do begin BeginUpdate(); with ConditionalFormats.Add('int(%1) in (3,4,5)',Null) do begin BackColor := $ff; ApplyTo := EXG2ANTTLib_TLB.FormatApplyToEnum($1); end; MarkSearchColumn := False; with Columns do begin Add('Column 1'); Add('Column 2'); end; with Items do begin CellValue[OleVariant(AddItem(OleVariant(0))),OleVariant(1)] := OleVariant(1); CellValue[OleVariant(AddItem(OleVariant(2))),OleVariant(1)] := OleVariant(3); CellValue[OleVariant(AddItem(OleVariant(4))),OleVariant(1)] := OleVariant(5); end; EndUpdate(); end |
1143 |
Is it possible to colour a particular column
with G2antt1 do begin BeginUpdate(); MarkSearchColumn := False; with Columns do begin Add('Column 1'); (IUnknown(Add('Column 2')) as EXG2ANTTLib_TLB.Column).Def[EXG2ANTTLib_TLB.exCellBackColor] := OleVariant(255); end; with Items do begin CellValue[OleVariant(AddItem(OleVariant(0))),OleVariant(1)] := OleVariant(1); CellValue[OleVariant(AddItem(OleVariant(2))),OleVariant(1)] := OleVariant(3); CellValue[OleVariant(AddItem(OleVariant(4))),OleVariant(1)] := OleVariant(5); end; EndUpdate(); end |
1142 |
How do i get all the children items that are under a certain parent Item handle
with G2antt1 do begin BeginUpdate(); LinesAtRoot := EXG2ANTTLib_TLB.exLinesAtRoot; Columns.Add('P'); with Items do begin h := AddItem('Root'); InsertItem(h,Null,'Child 1'); InsertItem(h,Null,'Child 2'); ExpandItem[h] := True; end; with Items do begin hChild := ItemChild[FirstVisibleItem]; OutputDebugString( CellValue[OleVariant(hChild),OleVariant(0)] ); OutputDebugString( CellValue[OleVariant(NextSiblingItem[hChild]),OleVariant(0)] ); end; EndUpdate(); end |
1141 |
How can I access the control's scroll bar so I can change its appearance
with G2antt1 do begin BeginUpdate(); Chart.PaneWidth[False] := 0; VisualAppearance.Add(1,'c:\exontrol\images\normal.ebn'); Background[EXG2ANTTLib_TLB.exHSThumb] := $1000000; EndUpdate(); end |
1140 |
How can I show my bars using the parts of the current theme
with G2antt1 do begin BeginUpdate(); with VisualAppearance do begin Add(1,'XP:Button 1 1'); Add(2,'XP:Button 1 2'); Add(3,'XP:ScrollBar 3 1'); Add(4,'XP:ScrollBar 3 2'); end; with Chart do begin PaneWidth[False] := 48; FirstVisibleDate := '1/1/2001'; with Bars do begin Add('B1').Color := $1000000; Add('B2').Color := $2000000; Add('S1').Color := $3000000; Add('S2').Color := $4000000; end; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Button1'),'B1','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Button 2'),'B2','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Scrollbar 1'),'S1','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Scrollbar 2'),'S2','1/2/2001','1/4/2001',Null,Null); end; EndUpdate(); end |
1139 |
How do I hide the text on a bar if the text is to big for the bar length
with G2antt1 do begin Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/27/2000'; LevelCount := 2; PaneWidth[False] := 48; with Bars.Item['Task'] do begin Pattern := EXG2ANTTLib_TLB.exPatternBox; Height := 13; end; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K1','This is a bit of text that is not clipped'); h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K1','This is a bit of text that get''s clipped'); ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(3); ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarToolTip] := ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarCaption]; end; end |
1138 |
Is it possible to change the color for non-working parts of the bar
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin LevelCount := 2; PaneWidth[False] := 48; FirstVisibleDate := '1/1/2001'; Bars.Add('Task:Split').Shortcut := 'Task'; NonworkingDaysColor := $f0faf0; end; with Items do begin AddBar(AddItem('Task 1'),'Task','1/2/2001','1/16/2001',Null,Null); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/16/2001','',Null); ItemBar[h,'',EXG2ANTTLib_TLB.exBarNonWorkingColor] := OleVariant(65280); end; EndUpdate(); end |
1137 |
Is it possible to change the color for the percent bar being displayed inside a specified bar only
with G2antt1 do begin Columns.Add('Task'); Chart.FirstVisibleDate := '1/1/2001'; Chart.Bars.Add('Task%Progress'); Chart.PaneWidth[False] := 48; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task%Progress','1/2/2001','1/6/2001','K1',Null); ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarPercent] := OleVariant(0.4); h := AddItem('Task 2'); AddBar(h,'Task%Progress','1/2/2001','1/6/2001','K1',Null); ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarPercent] := OleVariant(0.5); ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarPercentColor] := OleVariant(255); end; end |
1136 |
How do I get a handle on the item before adding the bar
with G2antt1 do begin BeginUpdate(); MarkSearchColumn := False; OnResizeControl := EXG2ANTTLib_TLB.exResizeChart; Columns.Add('Tasks'); (IUnknown(Columns.Add('Start')) as EXG2ANTTLib_TLB.Column).Visible := False; (IUnknown(Columns.Add('End')) as EXG2ANTTLib_TLB.Column).Visible := False; with Chart do begin FirstVisibleDate := '9/20/2006'; PaneWidth[False] := 64; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 0'); CellValue[OleVariant(h1),OleVariant(1)] := '9/21/2006'; CellValue[OleVariant(h1),OleVariant(2)] := '9/24/2006'; AddBar(h1,'Task',CellValue[OleVariant(h1),OleVariant(1)],CellValue[OleVariant(h1),OleVariant(2)],Null,Null); h2 := InsertItem(h,Null,'Task 1'); CellValue[OleVariant(h2),OleVariant(1)] := '9/25/2006'; CellValue[OleVariant(h2),OleVariant(2)] := '9/28/2006'; AddBar(h2,'Task',CellValue[OleVariant(h2),OleVariant(1)],CellValue[OleVariant(h2),OleVariant(2)],Null,Null); h3 := InsertItem(h,Null,'Task 2'); CellValue[OleVariant(h3),OleVariant(1)] := '9/29/2006'; CellValue[OleVariant(h3),OleVariant(2)] := '10/2/2006'; AddBar(h3,'Task',CellValue[OleVariant(h3),OleVariant(1)],CellValue[OleVariant(h3),OleVariant(2)],Null,Null); AddItem(OleVariant(ItemCount)); end; EndUpdate(); end |
1135 |
Is there an Items method that I can use to loop around to compare the item's user data against
with G2antt1 do begin Columns.Add('Default'); with Items do begin h := AddItem('Root 1'); InsertItem(h,Null,'Child 1'); ItemData[InsertItem(h,Null,'Child 2')] := OleVariant(1234); ExpandItem[h] := True; ItemBold[FindItemData[OleVariant(1234),Null]] := True; end; end |
1134 |
How do I make the tooltip box wider to allow for longer text
with G2antt1 do begin ToolTipWidth := 328; Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/4/2001','K1',Null); ItemBar[h,'K1',EXG2ANTTLib_TLB.exBarToolTip] := 'This is a bit of text that''s displayed when the cursor hovers the bar'; end; end |
1133 |
How do i set the default timeslots to say hours or minutes
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; LevelCount := 2; AllowOverviewZoom := EXG2ANTTLib_TLB.exAlwaysZoom; OverviewZoomUnit := 24; OverviewZoomCaption := 'Y|½Y|¼Y|Mo|T|W|D|H|Mi|S'; UnitScale := EXG2ANTTLib_TLB.exMinute; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Item 2'),'Task','1/16/2001','1/25/2001',Null,Null); AddBar(AddItem('Item 3'),'Task','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Item 4'),'Task','2/16/2001','2/25/2001',Null,Null); end; EndUpdate(); end |
1132 |
Can I use icons or images in the text in the overview zoom buttons (Sec., Min., Hour, Month...)
with G2antt1 do begin BeginUpdate(); HTMLPicture['pic1'] := 'c:\exontrol\images\zipdisk.gif'; with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; LevelCount := 2; AllowOverviewZoom := EXG2ANTTLib_TLB.exAlwaysZoom; OverviewZoomUnit := 24; OverviewHeight := 58; OverviewZoomCaption := 'Y<br>e<br>a<br>r|½Y|¼Y|M<br>o<br>n<br>t<br>h|T|W<br>e<br>e<br>w|<img>pic1:28<img>|H<br>o<br>u<br>r|M<br>i<br>n|S<br>e<br>c'; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Item 2'),'Task','1/16/2001','1/25/2001',Null,Null); AddBar(AddItem('Item 3'),'Task','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Item 4'),'Task','2/16/2001','2/25/2001',Null,Null); end; EndUpdate(); end |
1131 |
Can I use icons or images in the text in the overview zoom buttons (Sec., Min., Hour, Month...)
with G2antt1 do begin BeginUpdate(); Images('gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTql' + 'Vq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0' + 'ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yN' + 'AOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA='); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; LevelCount := 2; AllowOverviewZoom := EXG2ANTTLib_TLB.exAlwaysZoom; OverviewZoomUnit := 24; OverviewZoomCaption := 'Y|½Y|¼Y|<img>2<img>|T|W|<img>1<img>|H|M|S'; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Item 2'),'Task','1/16/2001','1/25/2001',Null,Null); AddBar(AddItem('Item 3'),'Task','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Item 4'),'Task','2/16/2001','2/25/2001',Null,Null); end; EndUpdate(); end |
1130 |
How do I change (for localisation) the text in the buttons like (Sec., Min., Hour, Month...)
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; LevelCount := 2; AllowOverviewZoom := EXG2ANTTLib_TLB.exAlwaysZoom; OverviewZoomUnit := 24; OverviewZoomCaption := 'Y|½Y|¼Y|Mo|T|W|D|H|Mi|S'; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Item 2'),'Task','1/16/2001','1/25/2001',Null,Null); AddBar(AddItem('Item 3'),'Task','1/2/2001','1/4/2001',Null,Null); AddBar(AddItem('Item 4'),'Task','2/16/2001','2/25/2001',Null,Null); end; EndUpdate(); end |
1129 |
How I can change the Months and Weekdays
with G2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 0; FirstVisibleDate := '2/1/2010'; LevelCount := 2; UnitWidth := 10; MonthNames := '1 2 3 4 5 6 7 8 9 10 11 12'; WeekDays := 'A B C D E F G'; with Level[0] do begin Label := '<%mmmm%>'; Unit := EXG2ANTTLib_TLB.exMonth; end; with Level[1] do begin Label := '<font ;6><%ddd%>'; Unit := EXG2ANTTLib_TLB.exDay; end; end; EndUpdate(); end |
1128 |
How do i get the current window time frame (the start and end) of the gantt chart
// DateChange event - Occurs when the first visible date is changed. procedure TForm1.G2antt1DateChange(ASender: TObject; ); begin with G2antt1 do begin with Chart do begin OutputDebugString( 'Start' ); OutputDebugString( FirstVisibleDate ); OutputDebugString( '' ); OutputDebugString( 'End' ); OutputDebugString( DateFromPoint[PaneWidth[True],0] ); end; end end; with G2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 1; LevelCount := 2; ScrollTo('1/1/2010',OleVariant(0)); end; EndUpdate(); end |
1127 |
When I use this Chart.get_DateFromPoint(exg2antt1.Width, 0) I get date as 0, 30/12/1899, or 12:00:00 AM. What that means
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin OutputDebugString( Chart.DateFromPoint[-1,-1] ); end end; with G2antt1 do begin with Chart do begin PaneWidth[False] := 48; LevelCount := 2; end; end |
1126 |
How do I enable grabing bars to other items/rows (and only enable them to be dropped on certain rows)
// BarParentChange event - Occurs just before moving a bar from current item to another item. procedure TForm1.G2antt1BarParentChange(ASender: TObject; Item : HITEM;Key : OleVariant;NewItem : HITEM;var Cancel : WordBool); begin with G2antt1 do begin OutputDebugString( Items.CellCaption[OleVariant(NewItem),OleVariant(0)] ); Cancel := Items.ItemData[NewItem]; end end; with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; AllowLinkBars := False; Bars.Item['Task'].OverlaidType := Integer(EXG2ANTTLib_TLB.exOverlaidBarsTransparent) Or Integer(EXG2ANTTLib_TLB.exOverlaidBarsOffset); end; Columns.Add('Column'); with Items do begin h := AddItem('Item 1'); EnableItem[h] := False; ItemData[h] := OleVariant(-1); h := AddItem('Item 2'); ItemData[h] := OleVariant(0); AddBar(h,'Task','1/5/2001','1/7/2001','B',Null); ItemBar[h,'B',EXG2ANTTLib_TLB.exBarCanMoveToAnother] := OleVariant(True); ItemData[AddItem('Item 3')] := OleVariant(0); h := AddItem('Item 4'); EnableItem[h] := False; ItemData[h] := OleVariant(-1); end; EndUpdate(); end |
1125 |
How can I find out if a date time is a non-working part
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin h := ItemFromPoint[-1,-1,c,hit]; d := Chart.DateFromPoint[-1,-1]; OutputDebugString( d ); OutputDebugString( Chart.IsNonworkingDate[OleVariant(d),OleVariant(h)] ); end end; with G2antt1 do begin BeginUpdate(); Columns.Add('NonWorking'); with Chart do begin FirstWeekDay := EXG2ANTTLib_TLB.exMonday; FirstVisibleDate := '1/24/2008'; PaneWidth[False] := 64; LevelCount := 2; end; with Items do begin h := AddItem('Default'); h := AddItem('January'); ItemNonworkingUnits[h,OleVariant(False)] := 'month(value) = 1'; h := AddItem('February, Saturday, Sunday'); ItemNonworkingUnits[h,OleVariant(False)] := 'month(value) = 2 or (weekday(value) = 0 or weekday(value) = 6)'; h := AddItem('Sunday'); ItemNonworkingUnits[h,OleVariant(False)] := 'weekday(value) = 0'; end; EndUpdate(); end |
1124 |
I am using the ItemBar property exBarCanMoveToAnother, How do I stop it from being dropped on certain chart rows
// BarParentChange event - Occurs just before moving a bar from current item to another item. procedure TForm1.G2antt1BarParentChange(ASender: TObject; Item : HITEM;Key : OleVariant;NewItem : HITEM;var Cancel : WordBool); begin with G2antt1 do begin OutputDebugString( Items.CellCaption[OleVariant(NewItem),OleVariant(0)] ); Cancel := Items.ItemData[NewItem]; end end; with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; AllowLinkBars := False; Bars.Item['Task'].OverlaidType := Integer(EXG2ANTTLib_TLB.exOverlaidBarsTransparent) Or Integer(EXG2ANTTLib_TLB.exOverlaidBarsOffset); end; Columns.Add('Column'); with Items do begin h := AddItem('Item 1'); EnableItem[h] := False; ItemData[h] := OleVariant(-1); h := AddItem('Item 2'); ItemData[h] := OleVariant(0); AddBar(h,'Task','1/5/2001','1/7/2001','B',Null); ItemBar[h,'B',EXG2ANTTLib_TLB.exBarCanMoveToAnother] := OleVariant(True); ItemData[AddItem('Item 3')] := OleVariant(0); ItemData[AddItem('Item 4')] := OleVariant(0); end; EndUpdate(); end |
1123 |
What is the event I should use to capture the click event on the task item on left hand side
// Click event - Occurs when the user presses and then releases the left mouse button over the tree control. procedure TForm1.G2antt1Click(ASender: TObject; ); begin with G2antt1 do begin h := ItemFromPoint[-1,-1,c,hit]; OutputDebugString( Items.CellCaption[OleVariant(h),OleVariant(c)] ); end end; with G2antt1 do begin BeginUpdate(); LinesAtRoot := EXG2ANTTLib_TLB.exLinesAtRoot; Columns.Add('Items'); with Items do begin h := AddItem('R1'); InsertItem(h,Null,'Cell 1.1'); InsertItem(h,Null,'Cell 1.2'); ExpandItem[h] := True; h := AddItem('R2'); InsertItem(h,Null,'Cell 2.1'); InsertItem(h,Null,'Cell 2.2'); ExpandItem[h] := True; end; EndUpdate(); end |
1122 |
Can I add a hyperlink assigned to a bar
// AnchorClick event - Occurs when an anchor element is clicked. procedure TForm1.G2antt1AnchorClick(ASender: TObject; AnchorID : WideString;Options : WideString); begin with G2antt1 do begin OutputDebugString( AnchorID ); end end; with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := 'default'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := '<a1><b>A 1</b></a>'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); h := AddItem('Task 3'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := '<a2><b>A 2</b></a>'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); end; EndUpdate(); end |
1121 |
Can I change the background color only for the text (caption) in a bar
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := 'default'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := 'using <bgcolor=FF0000>bgcolor</bgcolor> HTML attribute '; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); end; EndUpdate(); end |
1120 |
Can I change the font to display the text (caption) in a bar
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := 'default'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := '<font Segoe UI;8 >using font HTML attribute </fgcolor>'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); end; EndUpdate(); end |
1119 |
How do i change the forecolor of text (caption) in a bar
with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '1/1/2001'; PaneWidth[False] := 48; end; with Items do begin h := AddItem('Task 1'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := 'default'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); h := AddItem('Task 2'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := '<fgcolor=FF0000>using fgcolor HTML attribute </fgcolor>'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); h := AddItem('Task 3'); AddBar(h,'Task','1/2/2001','1/6/2001','K',Null); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarCaption] := 'using exBarForeColor'; ItemBar[h,'K',EXG2ANTTLib_TLB.exBarHAlignCaption] := OleVariant(18); ItemBar[h,'K',EXG2ANTTLib_TLB.exBarForeColor] := OleVariant(65280); end; EndUpdate(); end |
1118 |
I have noticed that when scrolling horizontally the chart a tooltip shown. is it possible to actually do the scrolling without showing the tooltip
with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '6/20/2005'; AllowLinkBars := True; LevelCount := 2; PaneWidth[False] := 48; ToolTip := ''; end; with Items do begin AddBar(AddItem('Task 1'),'Task','6/21/2005','6/25/2005','A',Null); AddBar(AddItem('Task 2'),'Task','6/28/2005','7/2/2005','B',Null); end; EndUpdate(); end |
1117 |
How can I add a bar to be treated as a nonworking part like a "holidays" bar
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; LevelCount := 2; PaneWidth[False] := 48; AllowNonworkingBars := True; Bars.Add('Task:Split').Shortcut := 'Task'; end; Columns.Add('Tasks'); with Items do begin h := AddItem('Task 1'); ItemNonworkingUnits[h,OleVariant(False)] := 'weekday(value) in (0,6)'; AddBar(h,'','1/2/2001','1/5/2001','A','holyday'); ItemBar[h,'A',EXG2ANTTLib_TLB.exBarTreatAsNonworking] := OleVariant(True); AddBar(h,'Task','1/5/2001','1/12/2001','Z',Null); ItemBar[h,'Z',EXG2ANTTLib_TLB.exBarKeepWorkingCount] := OleVariant(True); end; EndUpdate(); end |
1116 |
Is it possible to add bars that act like a non-working fixed part or the item
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; LevelCount := 2; PaneWidth[False] := 48; AllowNonworkingBars := True; end; Columns.Add('Tasks'); with Items do begin h := AddItem('Task 1'); ItemNonworkingUnits[h,OleVariant(False)] := 'weekday(value) in (0,6)'; AddBar(h,'','1/3/2001','1/6/2001','h','holyday'); ItemBar[h,'h',EXG2ANTTLib_TLB.exBarTreatAsNonworking] := OleVariant(True); ItemBar[h,'h',EXG2ANTTLib_TLB.exBarSelectable] := OleVariant(False); end; EndUpdate(); end |
1115 |
Is it possible to add bars that act like a non-working part or the item
with G2antt1 do begin BeginUpdate(); with Chart do begin FirstVisibleDate := '1/1/2001'; LevelCount := 2; PaneWidth[False] := 48; AllowNonworkingBars := True; end; Columns.Add('Tasks'); with Items do begin h := AddItem('Task 1'); ItemNonworkingUnits[h,OleVariant(False)] := 'weekday(value) in (0,6)'; AddBar(h,'','1/3/2001','1/6/2001','h','holyday'); ItemBar[h,'h',EXG2ANTTLib_TLB.exBarTreatAsNonworking] := OleVariant(True); end; EndUpdate(); end |
1114 |
How can I change the both dates for the bar at once
with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin PaneWidth[False] := 64; FirstVisibleDate := '6/21/2005'; ShowEmptyBars := 1; end; with Items do begin h := AddItem('Test'); AddBar(h,'Task','6/22/2005','6/26/2005','',Null); AddBar(h,'Task','6/27/2005','6/29/2005',Null,Null); end; EndUpdate(); end |
1113 |
How can I get the selected bars in the chart
// ChartSelectionChanged event - Occurs when the user selects objects in the chart area. procedure TForm1.G2antt1ChartSelectionChanged(ASender: TObject; ); begin with G2antt1 do begin OutputDebugString( Items.SelectedObjects[EXG2ANTTLib_TLB.exSelectBarsOnly] ); end end; with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '6/20/2005'; AllowLinkBars := True; LevelCount := 2; PaneWidth[False] := 48; end; with Items do begin AddBar(AddItem('Task 1'),'Task','6/21/2005','6/25/2005','A',Null); AddBar(AddItem('Task 2'),'Task','6/28/2005','7/2/2005','B',Null); ItemBar[FirstVisibleItem,FirstItemBar[FirstVisibleItem],EXG2ANTTLib_TLB.exBarSelected] := OleVariant(True); end; EndUpdate(); end |
1112 |
How can I list the actions that can be performed by undo operations
// ChartEndChanging event - Occurs after the chart has been changed. procedure TForm1.G2antt1ChartEndChanging(ASender: TObject; Operation : BarOperationEnum); begin with G2antt1 do begin OutputDebugString( Chart.UndoListAction[Null,Null] ); end end; with G2antt1 do begin BeginUpdate(); Chart.FirstVisibleDate := '1/1/2001'; Chart.AllowLinkBars := False; Chart.Bars.Item['Task'].OverlaidType := Integer(EXG2ANTTLib_TLB.exOverlaidBarsTransparent) Or Integer(EXG2ANTTLib_TLB.exOverlaidBarsOffset); Chart.AllowUndoRedo := True; Chart.PaneWidth[False] := 32; Chart.Bars.Add('Task:Split').Shortcut := 'Task'; Columns.Add('Column'); with Items do begin AddBar(AddItem('Item 1'),'Task','1/2/2001','1/4/2001','A',Null); h := AddItem('Item 2'); AddBar(h,'Task','1/5/2001','1/9/2001','B',Null); ItemBar[h,'B',EXG2ANTTLib_TLB.exBarCanMoveToAnother] := OleVariant(True); ItemBar[h,'B',EXG2ANTTLib_TLB.exBarKeepWorkingCount] := OleVariant(True); ItemNonworkingUnits[AddItem('Item 3'),OleVariant(False)] := 'weekday(value)=0'; ItemNonworkingUnits[AddItem('Item 4'),OleVariant(False)] := 'weekday(value) in (3,5)'; end; EndUpdate(); end |
1111 |
How can I change the predefined labels being displayed in the chart's header so it shows the data in short format with no literals
with G2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 0; AllowOverviewZoom := EXG2ANTTLib_TLB.exAlwaysZoom; OverviewVisible := EXG2ANTTLib_TLB.exOverviewShowAllVisible; LevelCount := 3; Label[EXG2ANTTLib_TLB.exYear] := '<%yy%><|><%yyyy%>'; Label[EXG2ANTTLib_TLB.exHalfYear] := ''; Label[EXG2ANTTLib_TLB.exQuarterYear] := ''; Label[EXG2ANTTLib_TLB.exMonth] := '<|><%m%><|><%m%>/<%yy%><|><%m%>/<%yyyy%>'; Label[EXG2ANTTLib_TLB.exThirdMonth] := ''; Label[EXG2ANTTLib_TLB.exWeek] := '<|><%ww%><|><%m%>/<%d%>/<%yy%><r><%ww%><|><%m%>/<%d%>/<%yyyy%><r><%ww%><||><||>256'; Label[EXG2ANTTLib_TLB.exDay] := '<|><%d%><|><%m%>/<%d%>/<%yy%><|><%m%>/<%d%>/<%yyyy%><||><||>4096'; Label[EXG2ANTTLib_TLB.exHour] := '<|><%hh%><|><%m%>/<%d%>/<%yy%> <%h%> <%AM/PM%><|><%m%>/<%d%>/<%yyyy%> <%h%> <%AM/PM%><||><||>65536'; Label[EXG2ANTTLib_TLB.exMinute] := '<|><%nn%><|><%h%>:<%nn% <%AM/PM%>><|><%m%>/<%d%>/<%yy%> <%h%>:<%nn%> <%AM/PM%><|><%m%>/<%d%>/<%yyyy%> <%h%>:<%nn%> <%AM/PM%>'; Label[EXG2ANTTLib_TLB.exSecond] := '<|><%ss%><|><%nn%>:<%ss%><|><%h%>:<%nn%>:<%ss%> <%AM/PM%><|><%m%>/<%d%>/<%yy%> <%h%>:<%nn%>:<%ss%> <%AM/PM%><|><%m%>/<%d%>/<%yyy' + 'y%> <%h%>:<%nn%>:<%ss%> <%AM/PM%>'; LabelToolTip[EXG2ANTTLib_TLB.exYear] := '<%yyyy%>'; LabelToolTip[EXG2ANTTLib_TLB.exHalfYear] := ''; LabelToolTip[EXG2ANTTLib_TLB.exQuarterYear] := ''; LabelToolTip[EXG2ANTTLib_TLB.exMonth] := '<%m%>/<%yyyy%>'; LabelToolTip[EXG2ANTTLib_TLB.exThirdMonth] := ''; LabelToolTip[EXG2ANTTLib_TLB.exWeek] := '<%m%>/<%d%>/<%yyyy%> <%ww%>'; LabelToolTip[EXG2ANTTLib_TLB.exDay] := '<%m%>/<%d%>/<%yyyy%>'; LabelToolTip[EXG2ANTTLib_TLB.exHour] := '<%m%>/<%d%>/<%yyyy%> <%h%> <%AM/PM%>'; LabelToolTip[EXG2ANTTLib_TLB.exMinute] := '<%m%>/<%d%>/<%yyyy%> <%h%>:<%nn%> <%AM/PM%>'; LabelToolTip[EXG2ANTTLib_TLB.exSecond] := '<%m%>/<%d%>/<%yyyy%> <%h%>:<%nn%>:<%ss%> <%AM/PM%>'; UnitScale := EXG2ANTTLib_TLB.exDay; end; EndUpdate(); end |
1110 |
The histogram does not show (correctly) the bars, even if I changed the Bar.HistogramPattern and Bar.HistogramColor properties. What can be wrong
with G2antt1 do begin BeginUpdate(); with Chart do begin PaneWidth[False] := 48; FirstVisibleDate := '12/27/2000'; HistogramVisible := True; HistogramHeight := 32; with Bars.Item['Task'] do begin HistogramPattern := EXG2ANTTLib_TLB.exPatternBDiagonal; HistogramColor := $ff; end; ResizeUnitScale := EXG2ANTTLib_TLB.exHour; end; Columns.Add('Column'); with Items do begin AddBar(AddItem('Task 1'),'Task','1/2/2001 8:00:00 AM','1/2/2001 12:00:00 PM',Null,Null); AddBar(AddItem('Task 2'),'Task','1/1/2001 8:00:00 AM','1/5/2001 12:00:00 PM',Null,Null); end; EndUpdate(); end |
1109 |
How can I change the default key for the newly added link from "Link1" to my identifier
// AddLink event - Occurs when the user links two bars using the mouse. procedure TForm1.G2antt1AddLink(ASender: TObject; LinkKey : WideString); begin with G2antt1 do begin with Items do begin AddLink('newIDlink',Link[OleVariant(LinkKey),EXG2ANTTLib_TLB.exLinkStartItem],Link[OleVariant(LinkKey),EXG2ANTTLib_TLB.exLinkStartBar],Link[OleVariant(LinkKey),EXG2ANTTLib_TLB.exLinkEndItem],Link[OleVariant(LinkKey),EXG2ANTTLib_TLB.exLinkEndBar]); RemoveLink(OleVariant(LinkKey)); end; end end; // MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin OutputDebugString( Chart.LinkFromPoint[-1,-1] ); end end; with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '6/20/2005'; AllowLinkBars := True; LevelCount := 2; PaneWidth[False] := 48; end; with Items do begin AddBar(AddItem('Task 1'),'Task','6/21/2005','6/25/2005','',Null); AddBar(AddItem('Task 2'),'Task','6/28/2005','7/2/2005','',Null); end; EndUpdate(); end |
1108 |
How can I change the default key for the newly added link from "Link1" to my identifier
// AllowLink event - Notifies at runtime when a link between two bars is possible. procedure TForm1.G2antt1AllowLink(ASender: TObject; StartItem : HITEM;StartBarKey : OleVariant;EndItem : HITEM;EndBarKey : OleVariant;var LinkKey : OleVariant;var Cancel : WordBool); begin with G2antt1 do begin LinkKey := 'newIDlink'; end end; // MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin OutputDebugString( Chart.LinkFromPoint[-1,-1] ); end end; with G2antt1 do begin BeginUpdate(); Columns.Add('Tasks'); with Chart do begin FirstVisibleDate := '6/20/2005'; AllowLinkBars := True; LevelCount := 2; PaneWidth[False] := 48; end; with Items do begin AddBar(AddItem('Task 1'),'Task','6/21/2005','6/25/2005','',Null); AddBar(AddItem('Task 2'),'Task','6/28/2005','7/2/2005','',Null); end; EndUpdate(); end |
1107 |
We want to have a Task ID column as the first column that shows the row number. How can we do that
// FormatColumn event - Fired when a cell requires to format its caption. procedure TForm1.G2antt1FormatColumn(ASender: TObject; Item : HITEM;ColIndex : Integer;var Value : OleVariant); begin with G2antt1 do begin Value := Items.ItemPosition[Item]; end end; with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with (IUnknown(Columns.Add('Pos')) as EXG2ANTTLib_TLB.Column) do begin Width := 24; AllowSizing := False; Position := 0; FireFormatColumn := True; end; with Items do begin AddItem('Task A'); AddItem('Task B'); AddItem('Task C'); AddItem('Task D'); end; EndUpdate(); end |
1106 |
How can I get the caption of focused item
// SelectionChanged event - Fired after a new item has been selected. procedure TForm1.G2antt1SelectionChanged(ASender: TObject; ); begin with G2antt1 do begin with Items do begin OutputDebugString( 'Handle' ); OutputDebugString( FocusItem ); OutputDebugString( 'Caption' ); OutputDebugString( CellCaption[OleVariant(FocusItem),OleVariant(0)] ); end; end end; with G2antt1 do begin BeginUpdate(); LinesAtRoot := EXG2ANTTLib_TLB.exLinesAtRoot; Columns.Add('Items'); with Items do begin h := AddItem('R1'); InsertItem(h,Null,'Cell 1.1'); InsertItem(h,Null,'Cell 1.2'); ExpandItem[h] := True; h := AddItem('R2'); InsertItem(h,Null,'Cell 2.1'); InsertItem(h,Null,'Cell 2.2'); ExpandItem[h] := True; end; EndUpdate(); end |
1105 |
How can I get the caption of selected item
// SelectionChanged event - Fired after a new item has been selected. procedure TForm1.G2antt1SelectionChanged(ASender: TObject; ); begin with G2antt1 do begin with Items do begin OutputDebugString( 'Handle' ); OutputDebugString( SelectedItem[0] ); OutputDebugString( 'Caption' ); OutputDebugString( CellCaption[OleVariant(SelectedItem[0]),OleVariant(0)] ); end; end end; with G2antt1 do begin BeginUpdate(); LinesAtRoot := EXG2ANTTLib_TLB.exLinesAtRoot; Columns.Add('Items'); with Items do begin h := AddItem('R1'); InsertItem(h,Null,'Cell 1.1'); InsertItem(h,Null,'Cell 1.2'); ExpandItem[h] := True; h := AddItem('R2'); InsertItem(h,Null,'Cell 2.1'); InsertItem(h,Null,'Cell 2.2'); ExpandItem[h] := True; end; EndUpdate(); end |
1104 |
How can I get the link from the point
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin OutputDebugString( Chart.LinkFromPoint[-1,-1] ); end end; with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/29/2000'; PaneWidth[False] := 64; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/5/2001','1/7/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); Link['L1',EXG2ANTTLib_TLB.exLinkText] := 'L1'; h3 := AddItem('Task 3'); AddBar(h3,'Task','1/8/2001','1/10/2001','K3',Null); AddLink('L2',h2,'K2',h3,'K3'); Link['L2',EXG2ANTTLib_TLB.exLinkText] := 'L2'; end; EndUpdate(); end |
1103 |
How can I get the bar from the point
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin OutputDebugString( Chart.BarFromPoint[-1,-1] ); end end; with G2antt1 do begin BeginUpdate(); Columns.Add('Task'); with Chart do begin FirstVisibleDate := '12/29/2000'; PaneWidth[False] := 64; LevelCount := 2; end; with Items do begin h1 := AddItem('Task 1'); AddBar(h1,'Task','1/2/2001','1/4/2001','K1',Null); h2 := AddItem('Task 2'); AddBar(h2,'Task','1/4/2001','1/6/2001','K2',Null); AddLink('L1',h1,'K1',h2,'K2'); h3 := AddItem('Task 3'); AddBar(h3,'Task','1/8/2001','1/10/2001','K3',Null); AddLink('L2',h2,'K2',h3,'K3'); end; EndUpdate(); end |
1102 |
How can I get the level from the cursor
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin OutputDebugString( Chart.LevelFromPoint[-1,-1] ); end end; with G2antt1 do begin with Chart do begin FirstVisibleDate := '6/25/2010'; PaneWidth[False] := 0; LevelCount := 4; end; end |
1101 |
How can I get the date from the cursor
// MouseMove event - Occurs when the user moves the mouse. procedure TForm1.G2antt1MouseMove(ASender: TObject; Button : Smallint;Shift : Smallint;X : Integer;Y : Integer); begin with G2antt1 do begin OutputDebugString( Chart.DateFromPoint[-1,-1] ); end end; with G2antt1 do begin with Chart do begin PaneWidth[False] := 0; LevelCount := 2; end; end |